home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / modules / nessus-2.2.8.mo / usr / lib / nessus / plugins / yabb_xss.nasl < prev    next >
Text File  |  2005-03-31  |  2KB  |  82 lines

  1. #
  2. #  This script was written by David Maciejak <david dot maciejak at kyxar dot fr>
  3. #  based on work from
  4. #  (C) Tenable Network Security
  5. #
  6. #  Ref: GulfTech Security <security@gulftech.org>
  7. #
  8. #  This script is released under the GNU GPL v2
  9.  
  10. if(description)
  11. {
  12.  script_id(14782);
  13.  script_bugtraq_id(11214, 11215);
  14.  script_version ("$Revision: 1.5 $");
  15.  name["english"] = "YaBB XSS and administrator command execution";
  16.  
  17.  script_name(english:name["english"]);
  18.  
  19.  desc["english"] = "
  20. The 'YaBB.pl' CGI is installed. This version is affected by a 
  21. cross-site scripting vulnerability. This issue is due to a failure 
  22. of the application to properly sanitize user-supplied input.
  23.  
  24. As a result of this vulnerability, it is possible for a remote attacker
  25. to create a malicious link containing script code that will be executed 
  26. in the browser of an unsuspecting user when followed. 
  27.  
  28. Another flaw in YaBB may allow an attacker to execute malicious administrative
  29. commands on the remote host by sending malformed IMG tags in posts to the 
  30. remote YaBB forum and waiting for the forum administrator to view one of the
  31. posts.
  32.  
  33. Solution : Upgrade to the newest version of this software
  34. Risk factor : Medium";
  35.  
  36.  script_description(english:desc["english"]);
  37.  
  38.  summary["english"] = "Checks YaBB.pl XSS";
  39.  
  40.  script_summary(english:summary["english"]);
  41.  
  42.  script_category(ACT_GATHER_INFO);
  43.  
  44.  
  45.  script_copyright(english:"This script is Copyright (C) 2004 David Maciejak",
  46.         francais:"Ce script est Copyright (C) 2004 David Maciejak");
  47.         
  48.  family["english"] = "CGI abuses : XSS";
  49.  family["francais"] = "Abus de CGI";
  50.  script_family(english:family["english"], francais:family["francais"]);
  51.  script_dependencie("cross_site_scripting.nasl");
  52.  script_require_ports("Services/www", 80);
  53.  exit(0);
  54. }
  55.  
  56. #
  57. # The script code starts here
  58. #
  59.  
  60. include("http_func.inc");
  61. include("http_keepalive.inc");
  62.  
  63. port = get_http_port(default:80);
  64.  
  65. if (!get_port_state(port))exit(0);
  66.  
  67. if ( get_kb_item("www/" + port + "/generic_xss") ) exit(0);
  68.  
  69. foreach dir (cgi_dirs())
  70. {
  71.  req = string(dir, "/YaBB.pl?board=;action=imsend;to=%22%3E%3Cscript%3Efoo%3C/script%3E");
  72.  req = http_get(item:req, port:port);
  73.  r = http_keepalive_send_recv(port:port, data:req, bodyonly:1);
  74.  if( r == NULL )exit(0);
  75.  if (egrep(pattern:"<script>foo</script>", string:r))
  76.  {
  77.        security_warning(port);
  78.        exit(0);
  79.  }
  80. }
  81. exit(0);
  82.